วิธีติดตั้ง Laravel-CKEditor
CKEditor คืออะไร
CKEditor คือเครื่องมือที่ใช้เขียนข้อความ บทความหรือ Comment ลงบนเว็บไซต์ ซึ่งการทำงานจะคล้ายๆ กับ Text Area ที่เป็นกล่องเขียนข้อความธรรมดาทั่วไป แต่ถ้าติดตั้ง CKEditor เพิ่มเข้ามา ก็จะทำให้มีเครื่องมือที่ช่วยอำนวยความสะดวกมากมาย เช่น สามารถใส่ลิงก์ ปรับขนาดตัวอักษร ใส่สี ตัวหนา ตัวเอียงได้เหมือนกับการใช้งาน Microsoft Word โดยที่ไม่ต้องพิมพ์ code HTML หรือ Markdown ด้วยตัวเอง เพราะเราสามารถที่จะปรับแต่งข้อความได้ตามใจชอบด้วยเครื่องมือที่มีอยู่ใน CKEditor ได้อย่างง่ายดาย นอกจากนี้ถึงแม้ Text Area จะเป็นแค่กล่องเขียนข้อความธรรมดา แต่สำหรับคนที่มีความรู้เรื่องการเขียน code ก็สามารถปรับแต่งข้อความใน Text Area ได้ตามต้องการด้วย code HTML หรือ Markdown ได้เช่นเดียวกันครับ
การติดตั้ง CKEditor Package
การแนะนำการติดตั้ง CKEditor Package
ในครั้งนี้ ผมจะใช้เป็น Laravel 6 ครับ ขั้นตอนการติดตั้งจะมีดังนี้
1. ติดตั้งแพ็กเกจ CKEditor
ให้ Run command ตามนี้
composer require japonline/laravel-ckeditor
2. เพิ่ม ServiceProvider
สำหรับ Laravel 5.4 ให้เข้าไปที่ config/app.php
เพื่อทำการเพิ่ม ServiceProvider ที่เตรียมไว้ให้ด้านล่าง หลังจากที่เข้ามาที่ไฟล์ app.php
แล้ว ให้หาคำว่า providers และทำการเพิ่มโค้ดไว้ที่บรรทัดสุดท้ายเฉพาะภายใน array ที่ชื่อ providers
สำหรับ Laravel 5.5+ สามารถข้ามขั้นตอนการเพิ่ม ServiceProvider นี้ไปได้เลยครับ ซึ่งในตัวอย่างนี้ผมได้ใช้ Laravel 6 ในการติดตั้ง CKEditor และได้ข้ามขั้นตอนนี้ไปเหมือนกันครับ
Japonline\Ckeditor\ServiceProvider::class,
3. การทำ Publish the resources
ให้ Run command ตามนี้
php artisan vendor:publish --tag=ckeditor
4. การใช้งาน CKEditor
4.1 เพิ่ม Script
ลงในไฟล์ Blade
<script src="/vendor/japonline/laravel-ckeditor/ckeditor.js"></script> <script> CKEDITOR.replace('body_1-ckeditor'); CKEDITOR.replace('body_2-ckeditor'); CKEDITOR.replace('body_3-ckeditor'); </script>
ในส่วนของไฟล์ index.blade.php
ให้ทำการวาง <script>
ไว้ข้างบนคำว่า @endsection
ที่อยู่ส่วนท้ายสุดของไฟล์ index.blade.php
พร้อมตั้งชื่อใน replace ตามต้องการ ซึ่งในตัวอย่างนี้ผมจะใช้เป็นชื่อ 'body_1-ckeditor'
นอกจากนี้เราสามารถเพิ่มโค้ด CKEDITOR.replace('your_name-ckeditor');
กี่บรรทัดก็ได้ เพื่อที่จะสามารถติดตั้ง CKEditor ได้หลายตำแหน่งตามที่ต้องการเหมือนกับตัวอย่างรูปภาพด้านล่าง
4.2 เพิ่ม name หรือ id
ในส่วนของ <script>
ให้นำชื่อ 'body_1-ckeditor'
ไปใช้โดยนำไปใส่ในช่อง name หรือ id ของ textarea เพื่อที่จะทำให้ CKEditor สามารถใช้งานได้ ซึ่งในตัวอย่างตามรูปภาพด้านล่างนี้ผมใส่ชื่อ 'body_1-ckeditor'
ใว้ที่ id ของ textarea ทั้งหมด 3 id
4.3 ทดสอบ CKEditor
เปิดหน้าเว็บไซต์ของโปรเจกต์ CKEditor ขึ้นมา จะเห็นว่า CKEditor ได้แสดงขึ้นมาบนหน้าเว็บไซต์แล้ว จากนั้นทำการทดสอบโดยการใส่ข้อความอะไรลงไปก็ได้ แล้วลองปรับแต่งข้อความด้วยเครื่องมือของ CKEditor เพียงเท่านี้ก็สามารถใช้งาน CKEditor
ได้แล้วครับ
ขอขอบคุณที่มา: Japonline/laravel-ckeditor